# 需求：使用‘注册A.html’页面，完成以下操作：
# 1).获取用户名输入框的大小
# 2).获取页面上第一个超链接的文本内容
# 3).获取页面上第一个超链接的地址
# 4).判断页面中的span标签是否可见
# 5).判断页面中取消按钮是否可用
# 6).判断页面中'旅游'对应的复选框是否为选中的状态
# 导包
import time
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Options
# 打开浏览器
service = Service(r"D://Python314//chromedriver.exe")
chrome_options = Options()
chrome_options.add_experimental_option("detach", True)
driver = webdriver.Chrome(service=service, options=chrome_options)   # 创建浏览器对象
# 2.输入访问地址（URL）
driver.get("http://121.43.169.97:8848/pageA.html")
# 放大浏览器页面
driver.maximize_window()

# 1).获取用户名输入框的大小
# 根据 ID 是 userA）找到用户名输入框，调用 size 方法拿大小
# size = driver.find_elements_by_css_selector("#userA").size
size = driver.find_element(By.CSS_SELECTOR,"#userA").size
print("用户名输入框的大小为：", size)
# 2).获取页面上第一个超链接的文本内容
# a 标签就是超链接,找到页面里第一个 a 标签，调用 text 方法拿文本
# text = driver.find_element(By.CSS_SELECTOR, "a").text
# print("页面上第一个超链接的文本内容为：", text)
# 3).获取页面上第一个超链接的地址
# 还是找第一个 a 标签，调用 get_attribute 方法，传入 "href" 拿链接地址
href = driver.find_element(By.CSS_SELECTOR, "a").get_attribute("href")
print("页面上第一个超链接的地址为：", href)
# 4).判断页面中的span标签是否可见
# span 标签，调用 is_displayed 方法（返回 True 就是可见，False 就是不可见）
span = driver.find_element(By.CSS_SELECTOR, "span").is_displayed()
print(span)
# 5).判断页面中取消按钮是否可用
# ID(cancelA）找到取消按钮，调用 is_enabled 方法（True 可用，False 不可用）
enabled = driver.find_element(By.CSS_SELECTOR, "#cancelA").is_enabled()
print(enabled)
# 6).判断页面中'旅游'对应的复选框是否为选中的状态
# ID(lyA)找到旅游复选框，调用 is_selected 方法（True 选中，False 没选中）
is_selected = driver.find_element(By.CSS_SELECTOR, "#lyA").is_selected()
print(is_selected)
# '音乐'复选框中 点击 选中
driver.find_element(By.CSS_SELECTOR, "#yyA").click()
# 4).间隔3秒，关闭浏览器
time.sleep(3)
driver.quit()